package com.ruoyi.system.domain.vo;

import java.util.ArrayList;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.system.domain.ProFile;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;


/**
 * 执行记录视图对象 pro_process
 *
 * @author ruoyi
 * @date 2023-05-07
 */
@Data
@ExcelIgnoreUnannotated
public class ProProcessVo {

    private static final long serialVersionUID = 1L;

    /**
     * 执行ID
     */
    @ExcelProperty(value = "执行ID")
    private Long processId;

    /**
     * 任务ID
     */
    @ExcelProperty(value = "任务ID")
    private Long taskId;

    /**
     * 项目ID
     */
    @ExcelProperty(value = "项目ID")
    private Long subjectId;

    /**
     * 项目编号
     */
    @ExcelProperty(value = "项目编号")
    private String subjectNo;

    /**
     * 描述
     */
    @ExcelProperty(value = "描述")
    private String desp;

    /**
     * 开始时间
     */
    @ExcelProperty(value = "开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date beginDate;

    /**
     * 计划完成时间
     */
    @ExcelProperty(value = "计划完成时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date pfinishDate;

    /**
     * 执行状态
     */
    @ExcelProperty(value = "执行状态")
    private String status;

    /**
     * 项目进度
     */
    @ExcelProperty(value = "项目进度")
    private Long rate;

    /**
     * 创建时间
     */
    @ExcelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;
    /**
     * 创建人
     */
    @ExcelProperty(value = "创建人")
    private String createBy;

    private String filePath;

    private String createName;


    private List<ProFile> fileList = new ArrayList<>();
}
